package com.mycompany.project.client;

import java.util.ArrayList;

import marketplace.objects.PaqueteServiciosBO;
import marketplace.objects.ServicioBO;

import com.google.gwt.user.client.rpc.AsyncCallback;

public interface AdminServiciosServiceAsync {

	void consultarPaqueteServicios(long id,
			AsyncCallback<PaqueteServiciosBO> callback);

	void consultarPaqueteServiciosPorParametro(String param,
			String valorParametro,
			AsyncCallback<ArrayList<PaqueteServiciosBO>> callback);

	void consultarPaqueteServiciosPorProveedor(String loginProvedor,
			AsyncCallback<ArrayList<PaqueteServiciosBO>> callback);

	void consultarServicio(long id, AsyncCallback<ServicioBO> callback);

	void consultarServicioPorParametro(String parametro, String valorParametro,
			AsyncCallback<ArrayList<ServicioBO>> callback);

	void consultarServiciosPorProveedor(String loginProveedor,
			AsyncCallback<ArrayList<ServicioBO>> callback);

	void consultarServiciosPorTipo(String tipo,
			AsyncCallback<ArrayList<ServicioBO>> callback);

	void consultarServiciosPorTipoYParametro(String tipo, String parametro,
			String valorParametro,
			AsyncCallback<ArrayList<ServicioBO>> callback);

	void editarPaqueteServicios(PaqueteServiciosBO nPaquete,
			AsyncCallback<Void> callback);

	void editarServicio(ServicioBO nServicio, String tipo,
			AsyncCallback<Void> callback);

	void eliminarServicio(long id, AsyncCallback<Void> callback);

	void registrarPaqueteServicios(PaqueteServiciosBO nPaquete,
			AsyncCallback<Void> callback);

	void registrarServicio(ServicioBO nServicio, String tipo,
			AsyncCallback<Void> callback);

}
